/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Studio7i;

import java.util.List;
import java.util.ArrayList;

/**
 *
 * @author Grupo 5
 */
public class AdmSalas {

    private List<Sala> salas = new ArrayList<Sala>();

    public String registrarSala(String nombre, Local local, List<Instrumento> instrumentos,
            List<Servicio> servicios, int capacidadSala, double costo) {

        // verificamos errores
        if (instrumentos.size() >= capacidadSala) {
            return "Error: la cantidad de instrumentos supera la capacidad de la sala";
        }
        //Verificar configuración básica:
        int guitarra = 0;
        int bateria = 0;
        int teclado = 0;
        int microfono = 0;

        for (Instrumento i : instrumentos) {
            if (i.getTipo().equals("guitarra")) {
                guitarra++;
            }
            if (i.getTipo().equals("bateria")) {
                bateria++;
            }
            if (i.getTipo().equals("teclado")) {
                teclado++;
            }
            if (i.getTipo().equals("microfono")) {
                microfono++;
            }
        }
        if (guitarra > 2 || bateria > 1 || teclado > 1 || microfono > 2) {
            return "Error: la cantidad de instrumentos es mayor que la configuracion basica";
        }

        // si no hay errores
        Sala sala = new Sala(nombre, local, instrumentos, servicios, capacidadSala, costo);
        salas.add(sala);
        return "ok";
    }

    public void registrarSalaObjeto(Sala sala) {
        salas.add(sala);
    }

    public List<Sala> getSala(){
		return salas;
	}

    public int obtenerTotalSalas() {
        return salas.size();
    }

    public Sala buscarSala(AdmSalas admSalas, String nSala, String nLocal,String dLocal, int cap ){

        Sala escogida = new Sala("", null, null, null, 0, 0);

        for (Sala listar : admSalas.getSala()) {
            if (listar.getNombre().equals(nSala) || listar.getLocal().getNombre().equals(nLocal) || listar.getLocal().getDireccion().equals(dLocal) || listar.getCapacidadSala() == cap) {
                escogida = new Sala(listar.getNombre(), listar.getLocal(), listar.getInstrumentos(), listar.getServicios(), listar.getCapacidadSala(), listar.getCosto());


            }
        }
        return escogida;
    }

}
